package 线程.自定义线程池;

import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;

public class 自定义线程池 {
    public static void main(String[] args) {
        //创建自定义线程池的对象
        ThreadPoolExecutor pool =new ThreadPoolExecutor(
                3 ,  //核心线程的数量
                6 ,  //最大线程的数量,注意要大于核心线程的数量
                60,  //空闲线程的最大存活时间
                TimeUnit.SECONDS,  //最大存活时间的单位
                new ArrayBlockingQueue<>(3),  //阻塞队列(队伍的长度)
                Executors.defaultThreadFactory(), //创建线程工厂(制造临时线程)
                new ThreadPoolExecutor.AbortPolicy() //拒绝服务策略
        );
    }
}
